package com.xyz.practice.jdbc.databasemetadata;

import java.io.Serializable;

public class Table implements Serializable {
	private static final long serialVersionUID = 3363512786615751411L;

	/**
	 * table catalog (may be null)
	 */
	private String tableCat;
	/**
	 * table schema (may be null)
	 */
	private String tableSchem;
	/**
	 * table name
	 */
	private String tableName;
	/**
	 * table type. Typical types are "TABLE", "VIEW", "SYSTEM TABLE",
	 * "GLOBAL TEMPORARY", "LOCAL TEMPORARY", "ALIAS", "SYNONYM"
	 */
	private TableType tableType;
	/**
	 * explanatory comment on the table
	 */
	private String remarks;
	/**
	 * the types catalog (may be null)
	 */
	private String typeCat;

	String getTableCat() {
		return tableCat;
	}

	void setTableCat(String tableCat) {
		this.tableCat = tableCat;
	}

	String getTableSchem() {
		return tableSchem;
	}

	void setTableSchem(String tableSchem) {
		this.tableSchem = tableSchem;
	}

	String getTableName() {
		return tableName;
	}

	void setTableName(String tableName) {
		this.tableName = tableName;
	}

	TableType getTableType() {
		return tableType;
	}

	void setTableType(TableType tableType) {
		this.tableType = tableType;
	}

	String getRemarks() {
		return remarks;
	}

	void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	String getTypeCat() {
		return typeCat;
	}

	void setTypeCat(String typeCat) {
		this.typeCat = typeCat;
	}

	String getTypeSchem() {
		return typeSchem;
	}

	void setTypeSchem(String typeSchem) {
		this.typeSchem = typeSchem;
	}

	String getTypeName() {
		return typeName;
	}

	void setTypeName(String typeName) {
		this.typeName = typeName;
	}

	String getSelfReferencingColName() {
		return selfReferencingColName;
	}

	void setSelfReferencingColName(String selfReferencingColName) {
		this.selfReferencingColName = selfReferencingColName;
	}

	String getRefGeneration() {
		return refGeneration;
	}

	void setRefGeneration(String refGeneration) {
		this.refGeneration = refGeneration;
	}

	/**
	 * the types schema (may be null)
	 */
	private String typeSchem;
	/**
	 * type name (may be null)
	 */
	private String typeName;
	/**
	 * name of the designated "identifier" column of a typed table (may be null)
	 */
	private String selfReferencingColName;
	/**
	 * specifies how values in SELF_REFERENCING_COL_NAME are created. Values are
	 * "SYSTEM", "USER", "DERIVED". (may be null)
	 */
	private String refGeneration;

}
